// 封装 user 请求的接口文件
import type { CodeType, User, UserInfo, Patient } from '@/types/user'
import { request } from '@/utils/request'

// 发送登录请求
export const loginByPassword = (mobile: string, password: string) =>
  request<User>('login/password', 'POST', { mobile, password })

// 发送验证码
// 注意： type: 如果类型设置为为字符串的话，太宽泛了，需要使用联合类型来精确类型
// login登录 | register注册 | changeMobile更换手机号 | forgetPassword找回密码 | bindMobile绑定三方登录
export const sendMobileCode = (mobile: string, type: CodeType) =>
  request<{ code: string }>('/code', 'GET', { mobile, type })

// 短信登录
export const loginByMobile = (mobile: string, code: string) =>
  request<User>('/login', 'POST', { mobile, code })

// 获取用户详细信息
export const getUserInfo = () => request<UserInfo>('/patient/myUser', 'GET')

// 获取患者信息列表
export const getPatientList = () => request<Patient[]>('/patient/mylist')
